/**
* @file boot_info.h
* Multi Boot Information Structure used by kernel.
* Data structure for multiboot information.
*
* Copyrights 2010 Michal Saman, m.saman@designplus.cz.
* This source code is release under the Apache License 2.0.
* http://www.apache.org/licenses/LICENSE-2.0
*/
#ifndef _BOOT_INFO_H
#define _BOOT_INFO_H

#include <stdint.h>

struct mboot_info_t {
	uint32_t	flags;
	uint32_t	memoryLo;
	uint32_t	memoryHi;
	uint32_t	bootDevice;
	uint32_t	cmdLine;
	uint32_t	mods_count;
	uint32_t	mods_addr;
	uint32_t	sysm0;
	uint32_t	sysm1;
	uint32_t	sysm2;
	uint32_t	mmap_length;
	uint32_t	mmap_addr;
	uint32_t	drivers_length;
	uint32_t	drivers_addr;
	uint32_t	config_table;
	uint32_t	bootloader_name;
	uint32_t	apm_table;
	uint32_t	vbe_control_info;
	uint32_t	vbe_mode;
	uint16_t	vbe_interface_seg;
	uint32_t	vbe_interface_off;
	uint16_t	vbe_interface_len;
};

extern struct mboot_info_t* _boot_info;

#endif
